Local Reasoning for Termination
نویسندگان
چکیده
In this paper, we bridge the gap between separation logic and transition invariants in order to obtain a uniform framework for proving total correctness of pointer programs. We introduce the concept of separated transition constraints to describe the local effect of pointer programs. Separated transition constraints provide a new view on locality by their non-tight interpretation. Furthermore, separated transition constraints constitute the basis for separated transition logic which enables local reasoning about relations over states of heap-manipulating programs. We put the framework of transition invariants to work with separated transition logic and obtain as a consequence a conservative extension of separation logic that is able to prove termination.
منابع مشابه
A Trace-Based Refinement Calculus for Shared-Variable Parallel Programs
We present a trace-based, syntax-directed reenement calculus for shared-variable parallel programs. It supports compositional reasoning, local variables, and fairness and allows for reasoning about liveness properties like termination or eventual entry. A detailed example is given and related work is reviewed.
متن کاملPreliminary Notes on Termination and Non-Termination Reasoning
In this preliminary note, we will illustrate our ideas on automated mechanisms for termination and non-termination reasoning. 1 Termination and Non-Termination Reasoning with
متن کاملOperational Semantics and Program Equivalence
This tutorial paper discusses a particular style of operational semantics that enables one to give a ‘syntax-directed’ inductive definition of termination which is very useful for reasoning about operational equivalence of programs. We restrict attention to contextual equivalence of expressions in the ML family of programming languages, concentrating on functions involving local state. A brief ...
متن کاملAn Integrated Logic for Termination and Non-Termination Reasoning
We propose a logical framework for specifying and proving assertions about program termination and non-termination. Although program termination has been well studied, it is usually added as an external component to a specification logic. Here we propose to integrate termination requirements directly into our specification logic, as temporal constraints for each execution phase of every method....
متن کاملA Specification Logic for Termination Reasoning
We propose a logical framework for specifying and proving assertions about program termination. Although termination of programs has been well studied, it is usually added as an external component to the specification logic. Here we propose to integrate termination requirements directly into our specification logic, as temporal constraints for each phase of every method. Our temporal constraint...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2005